A wide range of implantable medical devices are provided for surgical implantation into humans or animals. Common examples include the cardiac pacemaker and the implantable cardioverter defibrillator (ICD). Other examples include devices for stimulating or sensing portions of the brain, spinal cord, muscles, bones, nerves, glands or other body organs or tissues.
Implantable medical devices, particularly pacemakers and ICDs, are often configured to be used in conjunction with an external programmer device which allows a physician to program the operation of the device to, for example, control the specific parameters by which the pacemaker detects arrhythmia conditions and responds thereto. For instance, the external programmer may allow the physician to specify the sensitivity with which the pacemaker or ICD senses electrical signals within the heart and to further specify the amount of electrical energy to be employed in administering therapy. Additionally, the external programmer may be configured to receive and display a wide variety of diagnostic information detected by the implantable device, such as electrical heart signals sensed by the device.
Current state of the art implantable medical devices may have dozens or hundreds of parameters that can be individually programmed using the external programmer. The programmable parameters permit the operation of the medical device to be tailored to the needs of the particular patient to provide optimal therapy while minimizing the risk of unnecessary therapy. However, the process of initially programming the many parameters can be a fairly laborious one even when a state of the art external programmer is used. In this regard, to program the many parameters, the physician may need to select numerous individual data entry screens using the external programmer and then manually enter specific parameters using a key pad. To minimize the amount of parameters that need to be manually entered, the external programmer may provide default values for many of the parameters. Nevertheless, for many patients, numerous parameters need to be individually manually entered by the physician. After the parameters have been entered, the external programmer generates programming commands for transmission to the implanted device via a telemetry system. U.S. Pat. No. 5,431,691 to Snell et al. entitled “Method and a System for Recording and Displaying a Sequential Series of Pacing Events” provides a detailed description of the operation of one exemplary pacemaker and external programmer system and is incorporated by reference herein.
Thus, a laborious initial programming procedure often needs to be performed by the physician for each patient receiving an implantable medical device. Unfortunately, in some cases, the parameters need to be subsequently modified. For example, the patient may complain of shortness of breath or other medical problems requiring the physician to repeat some or all of the programming steps to modify the programming parameters. In some cases, the updated programming does not benefit the patient. Accordingly, the physician may need to yet again perform many of the programming procedures to reset the programming to values that had been previously entered. For some patients, over a period of months or years, the programming parameters may need to be frequently modified, then modified again, often returning the programming state of the implantable device to a previous programming state.
Accordingly, it would desirable to provide an external programmer capable of automatically resetting the programming parameters of an implantable medical device to a previously programmed set of parameters such that the device can be easily reset to a previous programming state without re-entry of the programming parameters. Aspects of the present invention are directed to that end.
To facilitate the selection of a previous programming state, it would be desirable to provide the external programmer with the capability to display the differences between two or more programming states or to permit a physician to select a previous programming state and then modify only selected parameters from that state to create a new programming state. It would also be desirable to provide the external programmer device with the capability to merge the parameters from two or more previous programming states to create a new modified programming state. Additionally, some state of the art external programmer devices provide modeling software which models the performance of the implantable medical device based on a particular set of programming parameters and generates graphical displays permitting the physician to easily gauge the expected performance of the device. Thus, it would also be desirable to provide such an external programmer with the capability to display models of the behavior of the implantable medical device based upon two or more selected previous programming states to facilitate selection of the programming state providing the best performance. Other aspects of the invention are directed to these various features.